home *** CD-ROM | disk | FTP | other *** search
/ Aminet 13 / Aminet 13 - August 1996.iso / Aminet / gfx / conv / WhirlGIF20.lha / WhirlGIF / src / whirlgif.h < prev   
C/C++ Source or Header  |  1996-03-03  |  2KB  |  120 lines

  1.  
  2. /*
  3.  * whirlgif.h
  4.  *
  5.  * Copyright (C) 1995,1996 by Kevin Kadow
  6.  * Copyright (C) 1990,1991,1992 by Mark Podlipec. 
  7.  * All rights reserved.
  8.  *
  9.  * This software may be freely copied, modified and redistributed
  10.  * without fee provided that this copyright notice is preserved 
  11.  * intact on all copies and modified copies.
  12.  * 
  13.  * There is no warranty or other guarantee of fitness of this software.
  14.  * It is provided solely "as is". The author(s) disclaim(s) all
  15.  * responsibility and liability with respect to this software's usage
  16.  * or its effect upon hardware or computer systems.
  17.  *
  18.  */
  19.  
  20. /* Default amount of inter-frame time */
  21. #define DEFAULT_TIME 10
  22. /* If set to 1, Netscape 'loop' code will be added by default */
  23. #define DEFAULT_LOOP 0
  24. /* If set to 1, use the colormaps from all images, not just the first */
  25. #define DEFAULT_USE_COLORMAP 0
  26.  
  27. #include <stdio.h>
  28.  
  29.  
  30. #define BIGSTRING 256
  31. #define LONG int
  32. #define ULONG unsigned int
  33. #define BYTE char
  34. #define UBYTE unsigned char
  35. #define SHORT short
  36. #define USHORT unsigned short
  37. #define WORD short int
  38. #define UWORD unsigned short int
  39.  
  40. #ifndef TRUE
  41. #define TRUE 1
  42. #endif
  43. #ifndef FALSE
  44. #define FALSE 0
  45. #endif
  46.  
  47. /* Used in calculating the transparent color */
  48. #define TRANS_NONE 1
  49. #define TRANS_RGB 2
  50. #define TRANS_MAP 3
  51.  
  52. typedef struct
  53. {
  54.  int type;
  55.  UBYTE valid;
  56.  UBYTE map;
  57.  UBYTE red;
  58.  UBYTE green;
  59.  UBYTE blue;
  60.  } Transparency;
  61.  
  62. typedef struct
  63. {
  64.  Transparency trans;
  65.  int left;
  66.  int top;
  67.  unsigned int time;
  68. } Global;
  69.  
  70. typedef struct
  71. {
  72.  int width;
  73.  int height;
  74.  UBYTE m;
  75.  UBYTE cres;
  76.  UBYTE pixbits;
  77.  UBYTE bc;
  78. } GIF_Screen_Hdr; 
  79.  
  80. typedef union 
  81. {
  82.  struct
  83.  {
  84.   UBYTE red;
  85.   UBYTE green;
  86.   UBYTE blue;
  87.   UBYTE pad;
  88.  } cmap;
  89.  ULONG pixel;
  90. } GIF_Color;
  91.  
  92. typedef struct
  93. {
  94.  int left;
  95.  int top;
  96.  int width;
  97.  int height;
  98.  UBYTE m;
  99.  UBYTE i;
  100.  UBYTE pixbits;
  101.  UBYTE reserved;
  102. } GIF_Image_Hdr;
  103.  
  104. typedef struct 
  105. {
  106.  UBYTE valid;
  107.  UBYTE data;
  108.  UBYTE first;
  109.  UBYTE res;
  110.  int last;
  111. } GIF_Table;
  112.  
  113.  
  114. /* Amiga specific things to make SAS/C happy... */
  115.  
  116. #include "whirlgif_protos.h"
  117. #include <stdlib.h>
  118. #include <string.h>
  119.  
  120.